package cn.infrabase.token;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author Weimin Gao
 * @since 1.0.0
 **/
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Data
public class JwtTokenProperties implements TokenProperties {

	/**
	 * 令牌签名算法
	 */
	private TokenSignatureAlgorithm algorithm;

	/**
	 * 令牌签名密钥
	 */
	private String key;

	/**
	 * 令牌有效时间单位秒（值小于等于0时表示永久有效）
	 */
	private long efftime;

	@Override
	public TokenType getType() {
		return TokenType.JWT;
	}

}
